perm filename ARTIFI.2[W78,JMC] blob sn#353799 filedate 1978-05-07 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00003 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	.DEVICE XGP
C00005 00003	ARTIFICIAL INTELLIGENCE (AI),
C00026 ENDMK
C⊗;
.DEVICE XGP;
.PAGE FRAME 52 HIGH 60 WIDE;
.evenleftborder ← oddleftborder ← 1000;
.area text lines 4 to 52;
.title area heading lines 1 to 3
.double space
.indent 4,0,0
.place text;
.sname←null;
.
.TURN ON "α{∂%"; turn on "_" for "#" ;
.turn on "α∂%"
.FONT 1 "sail25";
.FONT 2 "BAXM30";
.FONT 3 "baxb30";
.FONT 4 "SUB";
.FONT 5 "SUP";
.FONT 6 "BASL35";
.FONT 7 "NGR25";
.FONT 8 "MATH30";
.FONT 9 "FIX25";
.FONT A "GRK30";
.font B "zero30"
.FONT C "BAXI30";
.FONT D "MS25";
.at "⊗"word" "	⊂ ("%2word%* ") ⊃;
.COUNT ITEM
.COUNT SUBITEM IN ITEM
.COUNT NOTE inline
.<<
.AT "~" TEXT "~"; ⊂
.SEND NOTES ⊂
.{NOTE!}. TEXT
.
.⊃;
.AT "$" ⊂ NEXT NOTE; ("%5"&NOTE!&"%*");⊃;
.>>
.AT "#" ⊂NEXT ITEM;(ITEM!);⊃;
.AT "&" ⊂NEXT SUBITEM;ONCE INDENT 10;(ITEM!&"."&SUBITEM!);⊃;
.macro cb(head) ⊂ if lines<7 then next page else skip; once center; select 3
head

.⊃
.macro bb(head) ⊂ if lines<7 then next page else skip; once select 3
head

.⊃

.count eq inline  from 1 to 999;
.at "!!" lab " " ⊂
.lab next eq
.eq})∂8{
.⊃
.<<formulas are signalled by !! followed by an optional identifier followed
. by colon followed by the formula.  A reference to formula nn is written {eq nn}
.!!e1:	x=x
.!!e2:	y=y
.
.Equation {eq e2} comes after {eq e1}.
.>>
.at "!a" txt ";"	⊂
.("txt"[1]&"∩[%6"&"txt"[2]&"]&∪[ "&"txt"[3]&"%*]");
.  ⊃
.at "!j" ⊂"%2j∪[%60%2]&''"⊃;

.AT 8 ⊂ONCE INDENT 5;⊃
.at "qat" ⊂"%3at%*"⊃
.at "qNIL" ⊂"%1NIL%*"⊃
.at "qnil" ⊂"%1NIL%*"⊃
.at "qaa" ⊂"%3aa%*"⊃
.at "qad" ⊂"%3ad%*"⊃
.at "qeq" ⊂"%3eq%*"⊃
.at "qif" ⊂"%3if%*"⊃
.at "qthen" ⊂"%3then%*"⊃
.at "qelse" ⊂"%3else%*"⊃
.at "qda" ⊂"%3da%*"⊃
.at "qdd" ⊂"%3dd%*"⊃
.at "qa" ⊂"%3a%*"⊃
.at "qn" ⊂"%3n%*"⊃
.at "qd" ⊂"%3d%*"⊃
.at "qb" ⊂"%8T%*"⊃
.at "qw" ⊂"%Aw%*"⊃
.at "qx" ⊂"%8x%*"⊃
.at "qg" ⊂"%Ag%*"⊃
ARTIFICIAL INTELLIGENCE (AI),
.break
.select 1
a branch of computer science concerned with making machines behave intelligently.
Intelligence machines can talk, play games, solve puzzles, tell stories, translate
language, and recognize patterns.

AI comprises two processes:  Discovering what intellectual steps are involved in
solving various problems, and writing computer programs to solve a specific problem.
A computer program is, in effect an AI theory, which can be tested by running
the program on a computer.

A problem in artificial intelligence is studied by dividing it into a number of
subproblems, working on each separately, and then combining the solutions.  The
main areas of AI research, and some of the techniques used, are described in
what follows.

SEARCH.  When the computer has to decide on an action, it may have to search among
a number of choices.  Each choice may lead to a number of different consequences,
and each consequence may result in new possible actions, and so on.  Sometimes
the possibilities converge to a result that can be conclusively evaluated, but
usually the programmer has to make the analysis stop short of a conclusive answer,
and devise some method of evaluating the resulting situation.

The performance of computer chess programs is a good measure of progress in this
part of AI.  The chess programs of the 1950's performed much worse than expected,
one reason being because it is unexpectedly difficult for a chess master who is
also a programmer to write a program that analyze moves as he analyzes them
himself.  In general, a player will, in writing a chess program, overlook certain
aspects of his own thinking until someone else points them out.  Recognition of
this fact led to some improvement in chess progams by the mid-1970's.  But
champion level play without excessive computation will require new ideas.

GOALS AND SUBGOALS.  Much AI research is concerned with how to express and use
information about actions, their effects, and preconditions.  A computer is often
required to find a sequence of actions on the basis of information about the
effects of, and about the preconditions for successful performance of, certain
actions.  A simple example would be to program a computer to build a tower
of blocks where a precondition for placing one block on another is that both
the block to be moved and the place where it goes should be clear, and may
involve moving other blocks first.

PROGRAM CONTENT.  Many of the difficulties in making machines perform tasks
turn on the question of decding what information the program should have,
what further conclusions can be drawn from initial information, and how
the information should be stored in the computer.  These difficulties have
led to research on the subject of what is knowledge.  Many of the questions
asked are those studied by philosophers under the name of ↓_epistemology_↓ --
the theory of knowledge.  Mathematical logic has provided powerful means of 
representing facts in computers and powerful modes of reasoning.  However, it
has turned out that not all modes of reasoning performed by humans and needed
for problem solving are represented in present systems of mathematical logic.
Logic is excellent for those methods of reasoning that never lead to
error from true premises, but intelligence also requires methods of reasoning
that only generate conjectures.  The work of John McCarthy at Stanford University
has shown how difficult it is to represent facts about concurrent actions,
that is, to write a program covering a situation in which one action starts while
others are in progress.

.once center
%3AI and the Everyday World%*

Besides dealing with purely symbolic problems such as chess and mathematics,
an intelligent machine must be able to see, hear, control motion, and make
things.

PATTERN MATCHING.  Programs have been written that find objects by tracing outlines
of color or brightness changes, or by growing regions of a single color or texture.
Such tasks require a computer to store patterns and to recognize objects by matching
patterns.  For example, a computer can store its idea of a dog as a collection
of legs, tail, etc., each of a given shape and connected in the right way.
Then it can try to find dogs in a picture by matching the dog pattern with parts
of the picture.  Te program must compute how a dog will appear with its legs
in some position when looked at from some angle and partly hidden by other 
ojects.  Actually, in order to recognize dogs it must do this process backwards,
deciding what kind of dog would lead to the appearance it sees.

General principles of pattern description and techniques for pattern matching
apply both to recognizing dogs and to recognizing certain chess problems.

Patterns of action called frames have been studied by Marvin L. Minsky and
his students at Massachusetts Institute of Technology.  A typical frame is the
event of visiting a restaurant; subframes would consist of being seated,
ordering, waiting, eating, paying the bill, and leaving.  Such frames have been
used by Roger C. Schank at Yale University in programs that answer questions
about stories, and also fill in information omitted from a story, because
it is implicit in the frame.

UNDERSTANDING LANGUAGE.  Programs that recognize and produce human speech have
been written.  Some such programs recognize hundreds of isolated words; some
can handle connected speech if it is not too difficult.

One idea for making an intelligent machine is to first make it capable of
understanding English, and then to let it read textbooks, encyclopedias, and
scientific articles.  There are computer programs that can read stories from
first grade readers and answer some questions about them.  Other programs can
converse with physicians about bacterial diseases of the blood.  All present
programs, however, are quite limited in the subject matter they can understand.
The difficulty is not one of vocabulary - it is easy to read a whole dictionary
into a computer - but rather that understanding requires some intital
knowledge, and means to give computers that initial knowledge in a sufficiently
general way are still lacking.

In the 1950's programs were written to translate from one language to another. 
These programs were not very good, and it was some years before it was
understood that successful translation rquires that the programs understand
the material being
translated.  Efforts are now being made to give computes an increasingly
better understanding of larger and larger fragments of natural language.  This
"understanding" is tested by the performance of question-answering
programs that answer questions about a text on the basis of information in the
text and the common sense knowledge possessed by the program.

One program combined Enlishe dialgue and problem solving to answer questions
and perform requested actions in a simulated "block world".  Devised by
Terry Winograd, SHRDLU could be requested, "pick up the red pyramid and
put it on the green glock."  SHRDLU would figure out that "it" referred to
the red pyramid.  It would clear off the green block if necessary, and would
ask "Which green block." if there was more than one.

LEARNING FROM EXPERIENCE.  Humans and animals learn from experience, and machines
should do likewose.  An early example was a program by Arthur Samuel for playing
checkers.  The behavior of the program was determined by certain numbers that
determined how it evaluated positions; for example, the relative values of a
king and a single man.  The program would read books of games played by master
players and ajust the numbers until they predicted as many as possible of the
moves regarded as good by the mastes.  Combined with look ahead, this makes
an excellent program.  A version of it, without the learning, is sold
commercially for playing through a television set.

To teach someone to play tic-tac-toe or solve an algebra problem, it is
enough to tell him the rules and rely on his intelligence to apply them.
This is not the case with a computer program.  The ability of a program to
learn from experience depends on how its own behavior is represented within
the machine.  If the program is to learn efficiently, then what a human would
regard as simple changes in behavior must be represented by small changes in
the way the behavior is represented.  With present computer programs, in
order to change a program's behavior, one must understand the program
thoroughly and make changes in a number of places.

One of the research goals of AI is to develop programs with common sense, and
thus capable of combining instructions with their own knowledge.  Samuel's was
such a program.  More recent programs, such as that by Patrick Winston 
of Massachusetts Institute of Technology, learn to classify objects
according to the presence of subobjects related in a specified way.  In Winston's
program, an arch is recognized as consisting of three objects one of which is
supported by the other two which are not touching each other.  An arcade is
learned as a line of arches arranged so that there is a path under all of them.

INDUSTRIAL ROBOTS.  Robots that do strenuous or dangerous tasks have been in
use for many years.  Almost all of them are programmed to repeat  the same
sequence of actions, such as putting an object found in a fixed location in a
punch press or a furnace, and removing it altter.  Using such a robot is more
flexible than building a special machine for each job, and scrapping it when
the job changes.  There are also programs that drive a vehicle so as to avoid
obstacles; others that assemble objects such as automobile water pumps out of
parts.  Industrial robots can be reprogrammed for new tasks.  Many such robots
are already in use in industry worldwide.

EXPERT PROGRAMS.  Edward A. Feigenbaum and Joshua Lederberg at Stanford
University pioneered the development of programs that embody the knowledge
of an expert in some field.  Such programs are developed by interviewing
experts and getting them to help improve further versions of a program.
DENDRAL is expert in determining the structure of an organic compound from
mass spectrograph observations, and MYCIN helps a doctor diagnose bacterial 
infections of the blood, recommending tests and treatment, and recommending
further tests and treatment based on the results of the first.  MYCIN is
intended only to make suggestions; the doctor still must understand the
reasons for everything he does.  The domain of both DENDRAL and MYCIN is
very narrow.

INFORMATION PROCESSING PSYCHOLOGY.  The development of artificial intelligence
and the study of human intelligence are closely related.  The information
processing approach to psychology has mainly replaced behaviorism, which was
chiefly concerned with finding direct relations between stimuli received by
organisms and their responses.  The information processing approach, initiated
by Allen Newell and Herbert Simon in the 1950's writes computer programs that
match complex problem-solving behavior.  Unlike stimulus-response theories,
information processing theories do not postulate direct relations between
inputs and outputs, because the internal processes can be very complex.  Both
artificial intelligence and information processing psychology must determine
what intellectual mechanisms are required to solve dirferent kinds of problems.

THE STUDY OF AI.  Artificial intelligence is a young and difficult branch of
science.  Studying it requires the ability to program a computer, especially
using programming languages such as LISP (list processing), which is popular
in AI research.  Also important is the study of the theory of the correctness
of computer programs; and complexity theory:  the study of how much computing
is required to solve various kinds of problems.

In AI, there is less to learn than in physics or mathematics in order to reach
the frontier of the subject.  Much of what the student learns is controversial;
some of it will probably be shown wrong.  Besides connections with phychology,
artificial intelligence needs facts from and contributes to mathematical logic,
linguistics, and the physiology of the nervous system.  Finally, AI studies 
many questions that are also studied by philosophers from a different point of
view.

The ultimate goal of AI is to understand intelligence well enough to make
computers more intelligent than people.  Some scientists do not think this
possible, while others think they are close to success.  Not all are agreed.
Most would contend, however, that present AI programs lack any general view
of the world, and of actions and events.  Until a breakthrough occurs here,
human-level intelligence -- except in narrow domains -- won't be achieved.

John McCarthy